<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Promise基本语法</title>
  </head>
  <body>
    <script>
      // 实例化 Promise 对象，回调函数需要传递两个参数,resolve(变为成功状态) 和 reject(变为失败状态)
      const p = new Promise(function (resolve, reject) {
        setTimeout(() => {
          // 读取数据成功
          /* let data = "数据库中的数据";
          resolve(data);
          // resolve 改变状态为成功，调用then中的第一个回调函数,并传递成功信息*/

          // 读取数据失败
          let err = "数据读取失败";
          reject(err); //改变状态为失败，调用then中的第二个回调函数,并传递失败信息
        }, 1000);
      });

      // 调用promise对象的then方法,有两个回调函数，第一个为成功回调，第二个为失败回调
      p.then(
        function (value) {
          console.log(value);
        },
        function (reason) {
          console.log(reason);
        }
      );
    </script>
  </body>
</html>
